Device and Method For Capturing Video

ABSTRACT

A device and method are presently disclosed. The computer implemented method, includes at an electronic device with a touch-sensitive display, displaying a still image on the touch-sensitive display, while displaying the still image, detecting user&#39;s finger contact with the touch-sensitive display, and in response to detecting the user&#39;s finger contact, video recording the still image.

FIELD

The present invention relates to electronic devices. More particularly,the present invention relates to electronic devices configured tocapture video.

BACKGROUND

As known in the art, creating music videos requires initially recordinga video followed by adding sound (i.e. music) during a separate editingprocess. This is very time consuming and costly.

As known in the art, to make a video of a still image requirespositioning a video camera above the printed image and videotaping theprinted image. This is also very time consuming as it requires the videocamera to be positioned at such an angle as to hide the edges of theprinted image and to remove any glare if the printed image is printed ona glossy paper.

As known in the art, to combine two videos requires users to separatelyrecord each video and use a separate editing process to combine theminto one. This is also very time consuming and costly.

Embodiments disclosed in the present disclosure overcome the limitationsof the prior art.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 depicts a block diagram of a portable device as known in the art.

FIG. 2 depicts a user interface in accordance with some embodimentspresently disclosed.

FIG. 3 depicts the user interface shown in FIG. 2 in landscape view.

FIG. 4 depicts another user interface in accordance with someembodiments presently disclosed.

FIGS. 5-11 depict another user interface in accordance with someembodiments presently disclosed.

FIG. 12 depicts another user interface in accordance with someembodiments presently disclosed.

FIGS. 13-15 depict another user interface in accordance with someembodiments presently disclosed.

FIG. 16 depicts another user interface in accordance with someembodiments presently disclosed.

FIGS. 17-20 depict another user interface in accordance with someembodiments presently disclosed.

FIG. 21 depicts another user interface in accordance with someembodiments presently disclosed.

FIG. 22 depicts the user interface shown in FIG. 17 .

FIG. 23 depicts another user interface in accordance with someembodiments presently disclosed.

FIG. 24 depicts the user interface shown in FIG. 17 .

FIG. 25 depicts another user interface in accordance with someembodiments presently disclosed.

FIG. 26 depicts the user interface shown in FIG. 17 .

FIG. 27 depicts another user interface in accordance with someembodiments presently disclosed.

FIG. 28 depicts a process in accordance with some embodiments presentlydisclosed.

FIG. 29 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 30 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 31 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 32 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 33 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 34 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 35 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 36 depicts another process in accordance with some embodimentspresently disclosed.

FIG. 37 depicts another process in accordance with some embodimentspresently disclosed.

In the following description, like reference numbers are used toidentify like elements. Furthermore, the drawings are intended toillustrate major features of exemplary embodiments in a diagrammaticmanner. The drawings are not intended to depict every feature of everyimplementation nor relative dimensions of the depicted elements, and arenot drawn to scale.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth toclearly describe various specific embodiments disclosed herein. Oneskilled in the art, however, will understand that the presently claimedinvention may be practiced without all of the specific details discussedbelow. In other instances, well known features have not been describedso as not to obscure the invention.

Also, it is to be understood that the phraseology and terminology usedherein is for the purpose of description and should not be regarded aslimiting. The use of “including,” “comprising,” or “having” andvariations thereof herein is meant to encompass the items listedthereafter and equivalents thereof as well as additional items. Unlesslimited otherwise, the terms “connected,” “coupled,” and “mounted,” andvariations thereof herein are used broadly and encompass direct andindirect connections, couplings, and mountings. In addition, the terms“connected” and “coupled” and variations thereof are not restricted tophysical or mechanical connections or couplings.

In addition, it should be understood that embodiments of the inventioninclude both hardware and electronic components or modules that, forpurposes of discussion, may be illustrated and described as if themajority of the components were implemented solely in hardware. However,one of ordinary skill in the art, and based on a reading of thisdetailed description, would recognize that, in at least one embodiment,the electronic based aspects of the invention may be implemented insoftware. As such, it should be noted that a plurality of hardware andsoftware-based devices, as well as a plurality of different structuralcomponents may be utilized to implement the invention. Furthermore, andas described in subsequent paragraphs, the specific mechanicalconfigurations illustrated in the drawings are intended to provideembodiments of the invention and that other alternative mechanicalconfigurations are possible.

An electronic device 100 as known in the art is shown in FIG. 1 . Thedevice 100 may comprise a memory 102 (which may comprise one or morecomputer readable storage mediums), an input/output (I/O) subsystem 106,a memory controller 122, one or more processing units (CPU's) 120, aperipherals interface 118, an audio circuitry 110, a speaker 111, amicrophone 113, and one or more optical sensors 164 in accordance withsome embodiments. These components may communicate over one or morecommunication buses or signal lines 103.

The memory 102 may comprise high-speed random access memory and/ornon-volatile memory, such as one or more magnetic disk storage devices,flash memory devices, or other non-volatile solid-state memory devices.Access to memory 102 by other components of the device 100, such as theCPU 120 and the peripherals interface 118, may be controlled by thememory controller 122.

The peripherals interface 118 couples the input and output peripheralsof the device 100 to the CPU 120 and memory 102. The one or moreprocessors 120 run or execute various software programs and/or sets ofinstructions stored in memory 102 to perform various functions for thedevice 100 and to process data. The peripherals interface 118, the CPU120, and the memory controller 122 may be implemented on a single chip,such as a chip 104. In some other embodiments, they may be implementedon separate chips.

The audio circuitry 110, the speaker 111, and the microphone 113 providean audio interface between a user and the device 100. The audiocircuitry 110 receives audio data from the peripherals interface 118,converts the audio data to an electrical signal, and transmits theelectrical signal to the speaker 111. The speaker 111 converts theelectrical signal to human-audible sound waves. The audio circuitry 110also receives electrical signals converted by the microphone 113 fromsound waves. The audio circuitry 110 converts the electrical signal toaudio data and transmits the audio data to the peripherals interface 118for processing. Audio data may be retrieved from and/or transmitted tomemory 102 by the peripherals interface 118. The audio circuitry 110 mayalso comprise a headset/speaker jack (not shown). The headset jackprovides an interface between the audio circuitry 110 and removableaudio input/output peripherals, such as speaker, output-only headphonesand/or a headset with both output (e.g., a headphone for one or bothears) and input (e.g., a microphone).

The device 100 may further comprise a touch-sensitive display 112, otherinput or control devices 116, radio frequency (RF) circuitry 108, and/oran external port 124 in accordance with some embodiments. Thesecomponents may also communicate over one or more communication buses orsignal lines 103.

As known in the art, the device 100 as shown in FIG. 1 may comprise moreor fewer components than shown, may combine two or more components, or amay have a different configuration or arrangement of the components. Thevarious components shown in FIG. 1 may be implemented in hardware,software or a combination of both hardware and software, including oneor more signal processing and/or application specific integratedcircuits.

In one embodiment, the device 100 is a cellular phone. In anotherembodiment, the device 100 is a video camera. In another embodiment, thedevice 100 is a camera. In another embodiment, the device 100 is a videocamera. In another embodiment, the device 100 is a computer. In anotherembodiment, the device 100 is a portable computer. In anotherembodiment, the device 100 is a tablet.

The device 100 may also comprise a radio frequency (RF) circuitry 108.The RF circuitry 108 may be configured to receive and transmit RFsignals, also called electromagnetic signals. The RF circuitry 108converts electrical signals to/from electromagnetic signals andcommunicates with communications networks and other communicationsdevices via the electromagnetic signals. The RF circuitry 108 mayinclude well-known circuitry for performing these functions, includingbut not limited to an antenna system, an RF transceiver, one or moreamplifiers, a tuner, one or more oscillators, a digital signalprocessor, a CODEC chipset, a subscriber identity module (SIM) card,memory, and so forth. The RF circuitry 108 may communicate withnetworks, such as the Internet, also referred to as the World Wide Web(WWW), an intranet and/or a wireless network, such as a cellulartelephone network, a wireless local area network (LAN) and/or ametropolitan area network (MAN), and other devices by wirelesscommunication. The wireless communication may use any of a plurality ofcommunications standards, protocols and technologies, including but notlimited to Global System for Mobile Communications (GSM), Enhanced DataGSM Environment (EDGE), high-speed downlink packet access (HSDPA),wideband code division multiple access (W-CDMA), code division multipleaccess (CDMA), time division multiple access (TDMA), Bluetooth, WirelessFidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and/orIEEE 802.11n), voice over Internet Protocol (VoIP), Wi-MAX, a protocolfor email (e.g., Internet message access protocol (IMAP) and/or postoffice protocol (POP)), instant messaging (e.g., extensible messagingand presence protocol (XMPP), Session Initiation Protocol for InstantMessaging and Presence Leveraging Extensions (SIMPLE), and/or InstantMessaging and Presence Service (IMPS)), and/or Short Message Service(SMS)), or any other suitable communication protocol, includingcommunication protocols not yet developed as of the filing date of thisdocument.

The I/O subsystem 106 couples input/output peripherals on the device100, such as the touch screen 112 and other input/control devices 116,to the peripherals interface 118. The I/O subsystem 106 may include adisplay controller 156 and one or more input controllers 160 for otherinput or control devices. The one or more input controllers 160receive/send electrical signals from/to other input or control devices116. The other input/control devices 116 may include one or morephysical buttons (e.g., push buttons, rocker buttons, etc.), dials,slider switches, joysticks, click wheels, and so forth. In somealternate embodiments, input controller(s) 160 may be coupled to any (ornone) of the following: a keyboard, infrared port, USB port, and apointer device such as a mouse. The one or more buttons (not shown) mayinclude an up/down button for volume control of the speaker 111 and/orthe microphone 113.

The touch-sensitive display 112 is sometimes called a “touch screen” forconvenience, and may also be known as or called a touch-sensitivedisplay system. In one embodiment, the touch-sensitive touch screen 112provides an input interface and an output interface between the device100 and a user. The touch screen 112 is configured to implement virtualor soft buttons and one or more soft keyboards. The display controller156 receives and/or sends electrical signals from/to the touch screen112. The touch screen 112 displays visual output to the user. The visualoutput may include graphics, text, icons, video, and any combinationthereof (collectively termed “graphics”). In some embodiments, some orall of the visual output may correspond to user-interface objects,further details of which are described below.

The touch screen 112 has a touch-sensitive surface, sensor or set ofsensors that accepts input from the user based on haptic and/or tactilecontact. The touch screen 112 and the display controller 156 (along withany associated modules and/or sets of instructions in memory 102) detectcontact (and any movement or breaking of the contact) on the touchscreen 112 and converts the detected contact into interaction withuser-interface objects (e.g., one or more soft keys, icons, web pages orimages) that are displayed on the touch screen. In one embodiment, apoint of contact between a touch screen 112 and the user corresponds toa finger of the user.

The touch screen 112 may use LCD (liquid crystal display) technology, orLPD (light emitting polymer display) technology, although other displaytechnologies may be used in other embodiments. The touch screen 112 andthe display controller 156 may detect contact and any movement orbreaking thereof using any of a plurality of touch sensing technologiesnow known or later developed, including but not limited to capacitive,resistive, infrared, and surface acoustic wave technologies, as well asother proximity sensor arrays or other elements for determining one ormore points of contact with a touch screen 112.

A touch-sensitive display in some embodiments of the touch screen 112may be analogous to the multi-touch sensitive tablets described in thefollowing U.S. Pat. No. 6,323,846 (Westerman et al.), U.S. Pat. No.6,570,557 (Westerman et al.), and/or U.S. Pat. No. 6,677,932(Westerman), and/or U.S. Patent Publication 2002/0015024A1, each ofwhich is hereby incorporated by reference in its entirety. However, atouch screen 112 displays visual output from the portable device 100,whereas touch sensitive tablets do not provide visual output.

A touch-sensitive display in some embodiments of the touch screen 112may be as described in the following applications: (1) U.S. patentapplication Ser. No. 11/381,313, “Multipoint Touch Surface Controller,”filed May 2, 2006; (2) U.S. patent application Ser. No. 10/840,862,“Multipoint Touchscreen,” filed May 6, 2004; (3) U.S. patent applicationSer. No. 10/903,964, “Gestures For Touch Sensitive Input Devices,” filedJul. 30, 2004; (4) U.S. patent application Ser. No. 11/048,264,“Gestures For Touch Sensitive Input Devices,” filed Jan. 31, 2005; (5)U.S. patent application Ser. No. 11/038,590, “Mode-Based Graphical UserInterfaces For Touch Sensitive Input Devices,” filed Jan. 18, 2005; (6)U.S. patent application Ser. No. 11/228,758, “Virtual Input DevicePlacement On A Touch Screen User Interface,” filed Sep. 16, 2005; (7)U.S. patent application Ser. No. 11/228,700, “Operation Of A ComputerWith A Touch Screen Interface,” filed Sep. 16, 2005; (8) U.S. patentapplication Ser. No. 11/228,737, “Activating Virtual Keys Of ATouch-Screen Virtual Keyboard,” filed Sep. 16, 2005; and (9) U.S. patentapplication Ser. No. 11/367,749, “Multi-Functional Hand-Held Device,”filed Mar. 3, 2006. All of these applications are incorporated byreference herein in their entirety.

The touch screen 112 may have a resolution of 100 dpi. to 160 dpi. Theuser may make contact with the touch screen 112 using any suitableobject or appendage, such as a stylus, a finger, and so forth. In someembodiments, the user interface is designed to work primarily withfinger-based contacts and gestures, which are much less precise thanstylus-based input due to the larger area of contact of a finger on thetouch screen. In some embodiments, the device translates the roughfinger-based input into a precise pointer/cursor position or command forperforming the actions desired by the user.

In addition to the touch screen 112, the device 100 may comprise atouchpad (not shown) for activating or deactivating particularfunctions. The touchpad is a touch-sensitive area of the device that,unlike the touch screen, does not display visual output. The touchpadmay be a touch-sensitive surface that is separate from the touch screen112 or an extension of the touch-sensitive surface formed by the touchscreen.

The device 100 may also comprise a physical or virtual click wheel (notshow) as an input control device 116. A user may navigate among andinteract with one or more graphical objects (henceforth referred to asicons) displayed in the touch screen 112 by rotating the click wheel orby moving a point of contact with the click wheel (e.g., where theamount of movement of the point of contact is measured by its angulardisplacement with respect to a center point of the click wheel). Theclick wheel may also be used to select one or more of the displayedicons. For example, the user may press down on at least a portion of theclick wheel or an associated button. User commands and navigationcommands provided by the user via the click wheel may be processed by aninput controller 160 as well as one or more of the modules and/or setsof instructions in memory 102. For a virtual click wheel, the clickwheel and click wheel controller may be part of the touch screen 112 andthe display controller 156, respectively. For a virtual click wheel, theclick wheel may be either an opaque or semitransparent object thatappears and disappears on the touch screen display in response to userinteraction with the device. In some embodiments, a virtual click wheelis displayed on the touch screen of a portable multifunction device andoperated by user contact with the touch screen.

The device 100 may further comprise a power system 162 for powering thevarious components. The power system 162 may comprise a power managementsystem, one or more power sources (e.g., battery, alternating current(AC)), a recharging system, a power failure detection circuit, a powerconverter or inverter, a power status indicator (e.g., a light-emittingdiode (LED)) and/or any other components associated with the generation,management and distribution of power in portable devices.

The optical sensor 164 of the device 100 may be electrically coupledwith an optical sensor controller 158 in I/O subsystem 106. The opticalsensor 164 may comprise charge-coupled device (CCD) or complementarymetal-oxide semiconductor (CMOS) phototransistors. The optical sensor164 receives light from the environment, projected through one or morelens, and converts the light to data representing an image. Inconjunction with an imaging module 143 (also called a camera module),the optical sensor 164 may capture visual media (i.e. still images orvideo). In some embodiments, the optical sensor 164 may be located onthe back of the device 100, opposite the touch screen display 112 on thefront of the device 100, so that the touch screen display 112 may beused as a viewfinder for either still and/or video image acquisition. Insome embodiments, the optical sensor 164 may be located on the front ofthe device 100 to capture image(s) of the user. In some embodiments, oneoptical sensor 164 may be located on the back of the device 100 andanother optical sensor 164 may be located on the front of the device100. In some embodiments, the position of the optical sensor 164 may bechanged by the user (e.g., by rotating the lens and the sensor in thedevice housing) so that a single optical sensor 164 may be used alongwith the touch screen display to capture still and/or video image.

The device 100 may also comprise one or more accelerometers 168. FIG. 1shows an accelerometer 168 coupled to the peripherals interface 118.Alternately, the accelerometer 168 may be coupled to an input controller160 in the I/O subsystem 106. The accelerometer 168 may perform asdescribed in U.S. Patent Publication No. 20050190059,“Acceleration-based Theft Detection System for Portable ElectronicDevices,” and U.S. Patent Publication No. 20060017692, “Methods AndApparatuses For Operating A Portable Device Based On An Accelerometer,”both of which are which are incorporated herein by reference in theirentirety. Information may be displayed on the touch screen display 112in a portrait view or a landscape view based on an analysis of datareceived from the one or more accelerometers 168.

As known in the art, the memory 102 may be configured to store one ormore software components as described below.

The memory 102 may be configured to store an operating system 126. Theoperating system 126 (e.g., Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, oran embedded operating system such as VxWorks) comprises various softwarecomponents and/or drivers for controlling and managing general systemtasks (e.g., memory management, storage device control, powermanagement, etc.) and facilitates communication between various hardwareand software components.

The memory 102 may also be configured to store a communication module128. The communication module 128 facilitates communication with otherdevices over one or more external ports 124 and also includes varioussoftware components for handling data received by the RF circuitry 108and/or the external port 124. In one embodiment, the external port 124(e.g., Universal Serial Bus (USB), FIREWIRE, etc.) is configured forcoupling directly to other devices or indirectly over a network (e.g.,the Internet, wireless LAN, etc.).

The memory 102 may be configured to store a contact/motion module 130.The contact/motion module 130 is configured to detect contact with thetouch screen 112 (in conjunction with the display controller 156) andother touch sensitive devices (e.g., a touchpad or physical clickwheel). The contact/motion module 130 includes various softwarecomponents for performing various operations related to detection ofcontact, such as determining if contact has occurred, determining ifthere is movement of the contact and tracking the movement across thetouch screen 112, and determining if the contact has been broken (i.e.,if the contact has ceased). Determining movement of the point of contactmay include determining speed (magnitude), velocity (magnitude anddirection), and/or an acceleration (a change in magnitude and/ordirection) of the point of contact. These operations may be applied tosingle contacts (e.g., one finger contacts) or to multiple simultaneouscontacts (e.g., “multitouch”/multiple finger contacts). Thecontact/motion module 130 and the display controller 156 may also detectcontact on a touchpad. The contact/motion module 130 and the controller160 may further detect contact on a click wheel.

The memory 102 may be configured to store a graphics module 132. Thegraphics module 132 comprises various known software components forrendering and displaying graphics on the touch screen 112, includingcomponents for changing the intensity of graphics that are displayed. Asused herein, the term “graphics” includes any object that can bedisplayed to a user, including without limitation text, web pages, icons(such as user-interface objects including soft keys), digital images,videos, animations and the like.

The memory 102 may also be configured to store a text input module 134.The text input module 134, which may be a component of graphics module132, provides soft keyboards for entering text in various applicationsthat need text input.

The memory 102 may be configured to store a GPS module 135. The GPSmodule 135 determines the location of the device and provides thisinformation for use in various applications (e.g., to camera module 143as picture/video metadata).

The memory 102 may be configured to store applications 136. Theapplications 136 may comprise one or more of the following modules (orsets of instructions), or a subset or superset thereof: a camera module143 for still and/or video images; an image management module 144; avideo player module 145; a music player module 146; and/or online videomodule 155.

As known in the art, applications 136 may comprise additional modules(or sets of instructions). For example, other applications 136 that maybe stored in memory 102 may include one or more of the following: acontacts module 137 (sometimes called an address book or contact list);a telephone module 138; a video conferencing module 139; an e-mailclient module 140; an instant messaging (IM) module 141; a bloggingmodule 142; a browser module 147; a calendar module 148; widget modules149, which may include weather widget 149-1, stocks widget 149-2,calculator widget 149-3, alarm clock widget 149-4, dictionary widget149-5, and other widgets obtained by the user, as well as user-createdwidgets 149-6; widget creator module 150 for making user-created widgets149-6; search module 151; notes module 153; map module 154; wordprocessing applications; JAVA-enabled applications; encryption; digitalrights management; voice recognition; and/or voice replication.

As known in the art, the camera module 143 (in conjunction with, forexample, touch screen 112, display controller 156, optical sensor(s)164, optical sensor controller 158, contact module 130, graphics module132, and image management module 144) may be configured to capture stillimages or video (including a video stream) and store them into memory102, modify characteristics of a still image or video, or delete a stillimage or video from memory 102.

As known in the art, the image management module 144 (in conjunctionwith, for example, touch screen 112, display controller 156, contactmodule 130, graphics module 132, text input module 134, and cameramodule 143) may be configured to arrange, modify or otherwisemanipulate, label, delete, present (e.g., in a digital slide show oralbum), and store still and/or video images.

As known in the art, the video player module 145 (in conjunction with,for example, touch screen 112, display controller 156, contact module130, graphics module 132, audio circuitry 110, and speaker 111) may beconfigured to display, present or otherwise play back videos (e.g., onthe touch screen 112 or on an external, connected display via externalport 124).

As known in the art, the online video module 155 (in conjunction with,for example, touch screen 112, display system controller 156, contactmodule 130, graphics module 132, audio circuitry 110, speaker 111, RFcircuitry 108,) may be configured to allow the user to access, browse,receive (e.g., by streaming and/or download), play back (e.g., on thetouch screen 112 or on an external, connected display via external port124), upload and/or otherwise manage online videos in one or more fileformats, such as, for example, H.264.

Each of the above identified modules and applications correspond to aset of instructions for performing one or more functions describedabove. These modules (i.e., sets of instructions) need not beimplemented as separate software programs, procedures or modules, andthus various subsets of these modules may be combined or otherwisere-arranged in various embodiments. For example, video player module 145may be combined with music player module 146 into a single module. Thememory 102 may store a subset of the modules and data structuresidentified above. Furthermore, memory 102 may store additional modulesand data structures not described above.

The device 100 may be configured so as to allow operation of apredefined set of functions on the device be performed exclusivelythrough a touch screen 112 and/or a touchpad. By using a touch screenand/or a touchpad as the primary input/control device for operation ofthe device 100, the number of physical input/control devices (such aspush buttons, dials, and the like) on the device 100 may be reduced.

The predefined set of functions that may be performed exclusivelythrough a touch screen and/or a touchpad may include navigation betweenuser interfaces. In some embodiments, the touchpad, when touched by theuser, navigates the device 100 to a main, home, or root menu from anyuser interface that may be displayed on the device 100.

Contrary to the prior art, in some embodiments presently disclosed, thedevice 100 is configured to capture still images and/or video (includinga video stream) while playing audio (i.e. music) through the speaker 111(or another external speaker configured to play audio from the audiocircuitry 110) and store them into memory. In one embodiment, this maybe accomplished by configuring the camera module 143 (in conjunctionwith, for example, touch screen 112, display controller 156, opticalsensor(s) 164, optical sensor controller 158, contact module 130,graphics module 132, audio circuitry 110, speaker 111 and imagemanagement module 144) to capture still images and/or video (including avideo stream) while playing audio (i.e. music) through the speaker 111(or another external speaker configured to play audio from the audiocircuitry 110) and store them into memory 102, modify characteristics ofa still image and/or video, or delete a still image and/or video frommemory 102.

FIGS. 2-16 illustrate user interfaces for a camera application that maybe implemented, for example, in the device 100 or other electronicdevices in accordance with some embodiments presently disclosed. In someembodiments presently disclosed, a computer-implemented method isperformed at an electronic device (e.g., 100) with a touch screendisplay 112.

In some embodiments, in response to a series of gestures (e.g. fingertaps) by the user, the device 100 displays a home screen 200 with one ormore icons (i.e. virtual buttons) 210 and/or 220 as shown in FIGS. 2 and3 . Information may be displayed in a portrait view (shown in FIG. 2 )or a landscape view (shown in FIG. 3 ) based on an analysis of datareceived from the one or more accelerometers 168.

In some embodiments, in response to a series of gestures (e.g. fingertaps) by the user, the device 100 displays list and/or one or more icons230, 240, 250, 260 corresponding to one or more videos stored in thedevice 100.

In one embodiment, in response to detecting a finger contact 265 (shownin FIG. 2 ) on the touch screen display 1112 of the device 100, thedevice 100 displays a music screen 440 with a list 400 of audio filesstored, for example, in the memory 102 of the device 100. In anotherembodiment, in response to detecting a finger contact 265 (shown in FIG.2 ) on the touch screen display 112 of the device 100, the device 100displays a music screen 440 with a list 400 of audio files stored in aremote computer (not shown) and available for play on the device 100and/or available for download to the device 100.

In one embodiment, in response to detecting a finger contact 415 (shownin FIG. 4 ) on the touch screen display 112 of the device 100, an audiofile 420 is selected and the device 100 displays video camera screen 500on the touch screen display 112 (as shown in FIG. 5 ). In thisembodiment, the video camera screen 500 displays on the touch screendisplay 112 images of objects/people positioned in front of the opticalsensor 164. In one embodiment, the video camera screen 500 is displayedin the portrait view (not shown) or a landscape view (as shown in FIG. 5).

In some embodiments, the device 100 displays one or more record controlsassociated with the video camera screen 500. In some embodiments, theone or more record controls comprise a record icon 510, an image icon520, a done icon 530, an undo icon 540, a return icon 550, and/or aprogress bar icon 560 as shown in FIG. 5 . In some embodiments,displaying one or more record controls comprises displaying one or morerecord controls on top of the video camera screen 500 (not shown). Insome embodiments, displaying one or more record controls comprisesdisplaying one or more record controls on bottom of the video camerascreen 500 (as shown in FIG. 5 ).

In some embodiments, while recording one or more images, the device 100ceases to display the one or more playback controls. In someembodiments, ceasing to display the one or more playback controlscomprises fading out the one or more playback controls. In someembodiments, the display of the one or more playback controls is ceasedafter a predetermined time. In some embodiments, the display of the oneor more playback controls is ceased after no contact is detected withthe touch screen display for a predetermined time.

In some embodiments, if the record icon 510 is activated by a fingercontact 565 (shown in FIG. 6 ), the device 100 initiates video recordingof objects/people positioned in front of the optical sensor 164 and thedevice 100 initiates the playing of the audio file 420 through thespeaker 111. In some embodiments, the device 100 continues videorecording as long as the record icon 510 is being activated by thefinger contact 565. In some embodiments, the device 100 pauses videorecording as soon as the finger contact 565 is removed from the recordicon 510. In some embodiments, the user can record multiple videosegments by starting and pausing video recording multiple times byapplying and removing finger contact 565 to and from the record icon510. In some embodiments, the device 100 plays the audio file 420through the speaker 111 only while the record icon 510 is beingactivated by the finger contact 565. In some embodiments, videorecording and playing of the audio file 420 is started and paused byapplying finger contact 565 to and from the record icon 510. In someembodiments, the progress of video recording is shown in the progressbar icon 560. In some embodiments, presently disclosed cameraapplication generates one or more markers 561 in the progress bar icon560 every time the user pauses video recording by removing fingercontact 565. In some embodiments, each marker 561 represents an end of avideo segment(s) preceding it. In one embodiment, each video segmentrecorded by the user is stored in, for example, memory 102 as a separatevideo file (not shown).

In one embodiment, upon re-activation of the record icon 510, the device100 will resume the playback of the audio file 420 from the same placeit was paused when the record icon 510 was deactivated by the removal ofthe finger contact 565.

In some embodiment, due to hardware/software speeds of the device 100,the length of the video segment recorded between activation anddeactivation of the record icon 510 does not match the amount of timethe audio file 420 is played between activation and deactivation of therecord icon 510. For example, the user places his finger on the recordicon 510 and removes it after about 2.5 seconds. Although the audio file420 plays about 2.5 seconds, due to the hardware/software speeds of thedevice 100, the actual length of the video segment that was recorded maybe less than 2.5 seconds. To avoid syncing inconsistencies when thevideo recording is resumed, the audio file 420 according to oneembodiment is rewound back to match the actual recorded length of videosegment. In some embodiment, a process of adjusting position ofsoundtrack audio to account for lost frames on video recording is shownin FIG. 33 . Referring to FIG. 33 , length of audio file 420 that wasplayed is represented by a thin line 3310; length of video that wasrecorded is represented by a thicker line 3320; the difference betweenthe length of the audio file 420 played and the length of the videorecorded is represented by length 3330. As shown in FIG. 33 , the audiofile 420 is backed up substantially equivalent to length 3330 every timeit is determined that the length of the video recorded differs from theduration of the audio file 420 that was played.

In one embodiment, this process is repeated for every video segmentbeing recorded upon the removal of the finger contact 565.

In some embodiments, if the undo icon 540 is activated by a fingercontact 701 (as shown in FIG. 7 ), the device 100 deletes the lastrecorded video segment, adjusts setting to reflect change in audio timeand total fragment duration. For example, if the video segment to bedeleted was 11.3 seconds in length, to avoid syncing inconsistencieswhen the video recording is resumed, the audio file 420 according to oneembodiment is rewound back 11.3 seconds (i.e. the length of the videosegment to be deleted) when finger contact 701 activates the undo icon540.

In some embodiments, if the return icon 550 is activated by a fingercontact 801 (as shown in FIG. 8 ), the device 100 exits the video camerascreen 500 and returns, for example, to the home screen 200 shown inFIGS. 2 and 3 . In some embodiments, if the return icon 550 is activatedby a finger contact 801 (as shown in FIG. 8 ), the device 100 exits thevideo camera screen 500 and returns, for example, to the music screen440 shown in FIG. 4 to, for example, allow the user to select anotheraudio file.

In some embodiments, if the done icon 530 is activated by a fingercontact 901 (as shown in FIG. 9 ), the device 100 performs splicing andre-encoding process of all the video segments and their associated videofiles and displays a preview screen 1000 as shown in FIG. 10 . In oneembodiment, a flow diagram 3110 of the splicing and encoding process isshown in FIG. 31 . Referring to FIG. 31 , at 3120, video segment A isrecorded; at 3130, the video segment A is encoded to common format andstored, for example, in the memory as described above; at 3140, videosegment B is recorded; at 3150, the video segment B is encoded to commonformat and stored, for example, in the memory as described above; at3160, the process 3110 determines that the done icon 530 is activated bythe finger contact 901; at 3170, the encoded video segments A and B aredemuxed to a single file; at 3180, the audio file 420 is added to thedemuxed single file; at 3190, the process 3110 previews the completevideo when play icon 1010 (shown in FIG. 10 ) is activated.

In some embodiments, the device 100 displays one or more previewcontrols associated with the preview screen 1000. In some embodiments,the one or more preview controls comprise a play/pause icon 1010, anedit icon 1020, a save video icon 1030, a fast forwards icon 1040, arewind icon 1050, a return icon 1060, and/or a bar icon 1065 as shown inFIG. 10 .

The play/pause icon 1010 allows the user to play and pause spliced videopreview playback. The edict icon 1020 allows the user to return to thevideo camera screen 500 to continue modifying video by deleting one ormore video segments with audio and/or record one or more new videosegments with audio. The save video icon 1030 allows the user to storethe spliced video in, for example, memory 102 for future playback and/orsharing with friends/family. The fast forward icon 1040 allows the userto seek forwards in time in spliced video preview playback. The rewindicon 1050 allows the user to seek backwards in time in spliced videopreview playback. The return icon 1060 allows the user to go back tohome screen 200 and/or music screen 440. The bar icon 1065 shows theprogress of the spliced video preview playback.

In some embodiments, if the image icon 520 is activated by a fingercontact 1101 (as shown in FIG. 11 ), the device 100 exits the videocamera screen 500 and enters an image selection screen 1200 (shown inFIG. 12 ) depicting one or more images 1210. In one embodiment, theimages 1210 are stored, for example, in the memory 102 of the device100. In another embodiment, the images 1210 are stored in a remotecomputer (not shown) and available for viewing on the device 100 and/oravailable for download to the device 100. If one of the images 1210 isselected with a finger contact 1201, the selected image 1210 isdisplayed in the video camera screen 500 as shown in FIG. 13 .

In some embodiments, the device 100 is configured to allow the user tozoom-in and/or drag the selected image 1210 in the video camera screen500 (as shown in FIG. 14 ) to allow a portion of the selected image 1210to be included in an image video segment.

In some embodiment, if the record icon 510 is activated by a fingercontact 1501 (as shown in FIG. 15 ), the device 100 initiates videorecording of selected image 1210 and the device 100 initiates theplaying of the audio file 420 through the speaker 111. In someembodiments, the device 100 continues video recording the selected image1210 as long as the record icon 510 is being activated by the fingercontact 1501. In some embodiments, the device 100 pauses video recordingof the selected image 1210 as soon as the finger contact 1501 is removedfrom the record icon 510. In some embodiments, the user can recordmultiple image video segments of the selected image 1210 by starting andpausing video recording multiple times by applying and removing fingercontact 1501 to and from the record icon 510. In some embodiments, thedevice 100 plays the audio file 420 through the speaker 111 only whilethe record icon 510 is being activated by the finger contact 1501. Insome embodiments, video recording and playing of the audio file 420 isstarted and paused by applying finger contact 1501 to and from therecord icon 510. In some embodiments, the progress of video recording isshown in the progress bar icon 560. In some embodiments, presentlydisclosed camera application generates one or more markers 1561 in theprogress bar icon 560 every time the user pauses video recording byremoving finger contact 1501. In some embodiments, each marker 1561represents an end of an image video segment preceding it.

In some embodiments, the device 100 repeats the selected image 1210 invideo record frame buffer(s) (not shown) as long as the record icon 510is being activated by the finger contact 1501. In some embodiments,frames in the video record frame buffer are processed into a singleimage video segment as soon as the finger contact 1501 is removed fromthe record icon 510. In one embodiment, an image to video conversionprocess 3010 is shown in FIG. 30 . Referring to FIG. 30 , individualframes 3020 are written to individual frames in a video where the lengthof the video is substantially equivalent to the length of time therecord icon 510 is being activated by the finger contact 1501.

In some embodiments, each image video segment recorded by the user isstored in, for example, memory 102 as a separate image video file (notshown). In some embodiments, upon re-activation of the record icon 510,the device 100 will resume the playback of the audio file 420 from thesame place it was paused when the record icon 510 was deactivated by theremoval of the finger contact 1501.

In some embodiment, due to hardware/software speeds of the device 100,the length of the image video segment recorded between activation anddeactivation of the record icon 510 does not match the amount of timethe audio file 420 is played between activation and deactivation of therecord icon 510. For example, the user places his finger on the recordicon 510 and removes it after about 3.9 seconds. Although the audio file420 plays about 3.9 seconds, due to the hardware/software speeds of thedevice 100, the actual length of the video segment that was recorded maybe less than 3.9 seconds. To avoid syncing inconsistencies when thevideo recording is resumed, the audio file 420 according to oneembodiment is rewound back to match the actual recorded length of videosegment.

In one embodiment, this process is repeated for every image videosegment being recorded upon the removal of the finger contact 565.

In some embodiments, if the done icon 530 is activated by a fingercontact 1502 (as shown in FIG. 15 ), the device 100 performs splicingand re-encoding process of all the image video segments and theirassociated image video files and displays a preview screen 1600 as shownin FIG. 16 . In one embodiment, a process 3210 for splicing andre-encoding of plurality image video segments is shown in FIG. 32 .Referring to FIG. 32 , at 3220, a video segments is recorded; at 3230,encoding parameters of the recorded video segment are analyzed; at 3240,defaults are set for the encoded parameters; at 3250, another segment isrecorded; at 3260, the another recorded segment is encoded withdefaults; at 3270, additional segments are recorded and encoded; at3280, audio track is added and the video is demuxed; at 3290, the videois ready for preview.

Referring to FIG. 16 , in some embodiments, the device 100 displays oneor more preview controls associated with the preview screen 1600. Insome embodiments, the one or more preview controls comprise a play/pauseicon 1610, a save icon 1630, and/or change icon 1620 as shown in FIG. 16.

The play/pause icon 1610 allows the user to play and pause spliced videopreview playback. The change icon 1620 allows the user to return to thevideo camera screen 500 to continue modifying video by deleting one ormore image video segments with audio and/or record one or more new imagevideo segments with audio. The save video icon 1630 allows the user tostore the spliced video in, for example, memory 102 for future playbackand/or sharing with friends/family.

FIGS. 17-27 illustrate additional user interfaces for a cameraapplication that may be implemented, for example, in the device 100 orother electronic devices in accordance with some embodiments presentlydisclosed. In some embodiments presently disclosed, acomputer-implemented method is performed at an electronic device (e.g.,100) with a touch screen display 112.

In some embodiments, in response to a series of gestures (e.g. fingertaps) by the user, the device 100 displays a video camera screen 1700 onthe touch screen display 112 (as shown in FIG. 17 ). In this embodiment,the video camera screen 1700 displays on the touch screen display 112images of objects/people positioned in front of the optical sensor 164.In one embodiment, the video camera screen 1700 is displayed in theportrait view (not shown) or a landscape view (as shown in FIG. 17 ).

In some embodiments, the device 100 displays one or more record controlsassociated with the video camera screen 1700. In some embodiments, theone or more record controls comprise a record icon 1710, an image icon1720, a done icon 1730, a music icon 1740, a video icon 1750, and/or aprogress bar icon 1760 as shown in FIG. 17 . In some embodiments,displaying one or more record controls comprises displaying one or morerecord controls on top of the video camera screen 1700 (not shown). Insome embodiments, displaying one or more record controls comprisesdisplaying one or more record controls on bottom of the video camerascreen 1700 (shown in FIG. 17 ). In some embodiments, displaying one ormore record controls comprises displaying one or more record controls onone or more sides of the video camera screen 1700 (as shown in FIG. 17).

In some embodiments, while recording one or more images, the device 100ceases to display the one or more playback controls. In someembodiments, ceasing to display the one or more playback controlscomprises fading out the one or more playback controls. In someembodiments, the display of the one or more playback controls is ceasedafter a predetermined time. In some embodiments, the display of the oneor more playback controls is ceased after no contact is detected withthe touch screen display for a predetermined time.

In some embodiments, if the record icon 1710 is activated by a fingercontact 1865 (shown in FIG. 18 ), the device 100 initiates videorecording of objects/people positioned in front of the optical sensor164 and the device 100 initiates the playing of the audio file 420 (asdescribed above) through the speaker 111. In some embodiments, thedevice 100 continues video recording as long as the record icon 1710 isbeing activated by the finger contact 1865. In some embodiments, thedevice 100 pauses video recording as soon as the finger contact 1865 isremoved from the record icon 1710. In some embodiments, the user canrecord multiple video segments by starting and pausing video recordingmultiple times by applying and removing finger contact 1865 to and fromthe record icon 1710. In some embodiments, the device 100 plays theaudio file 420 through the speaker 111 only while the record icon 1710is being activated by the finger contact 1865. In some embodiments,video recording and playing of the audio file 420 is started and pausedby applying finger contact 1865 to and from the record icon 1710. Insome embodiments, the progress of video recording is shown in theprogress bar icon 1760. In some embodiments, presently disclosed cameraapplication generates one or more markers 1861 in the progress bar icon1760 every time the user pauses video recording by removing fingercontact 1865. In some embodiments, each marker 1861 represents an end ofa video segment(s) preceding it. In one embodiment, each video segmentrecorded by the user is stored in, for example, memory 102 as a separatevideo file (not shown).

In one embodiment, upon re-activation of the record icon 1710, thedevice 100 will resume the playback of the audio file 420 from the sameplace it was paused when the record icon 1710 was deactivated by theremoval of the finger contact 1865.

In some embodiments, the user may continue video recording withouthaving to continuously apply finger contact 1865 to the icon 1710. Byapplying finger contact 1865 and dragging his finger to another positionon the video camera screen 1700 as shown, for example, by arrow 1801 inFIG. 19 , the device 100 will continue recording even if the userremoves his finger from the icon 1710. Dragging the finger contact 1865to another location on the screen 1700 locks the record icon 1710 in thevideo recording position to allow the user to use his hands for othertasks. Dragging the finger contact 1865 from the locked video recordingposition back to the original location pauses the video recording. It isto be understood that the finger contact 1865 may be dragged up, left,right or down to lock the record icon 1710 in the video recordingposition.

In some embodiment, due to hardware/software speeds of the device 100,the length of the video segment recorded between activation anddeactivation of the record icon 1710 does not match the amount of timethe audio file 420 is played between activation and deactivation of therecord icon 1710. For example, the user places his finger on the recordicon 1710 and removes it after about 2.5 seconds. Although the audiofile 420 plays about 2.5 seconds, due to the hardware/software speeds ofthe device 100, the actual length of the video segment that was recordedmay be less than 2.5 seconds. To avoid syncing inconsistencies when thevideo recording is resumed, the audio file 420 according to oneembodiment is rewound back to match the actual recorded length of videosegment. In one embodiment, this process is repeated for every videosegment being recorded upon the removal of the finger contact 1865.

In some embodiments, if the music icon 1740 is activated by a fingercontact 2001 (as shown in FIG. 20 ), the device 100 presents the userwith a music option screen 2100 as shown in FIG. 21 . In someembodiments, the music option screen 2100 presents the user with theinformation pertaining to the audio file 420 being played when recordicon 1710 is activated by the finger contact 1865. In one embodiment,the music option screen 2100 presents the user with the name of theaudio file 420, length of the audio file 420, and/or name of theartist/group performing the audio file 420.

In some embodiments, the device 100 displays one or more controlsassociated with the music option screen 2100. In some embodiments, theone or more controls comprise a cancel icon 2110, a done icon 2120, achange song icon 2130, and/or music switch 2140 as shown in FIG. 21 .

In one embodiment, if the cancel icon 2110 is selected, the device 100returns the user back to the video camera screen 1700 without anychanges. In one embodiment, if the change song icon 2130 is selected,the device 100 exits the music option screen 2100 and returns to themusic screen 440 (shown in FIG. 4 ) to allow the user to select anotheraudio file to be played during recording. In one embodiment, if themusic switch 2140 is toggled, the device 100 toggles the playback of anaudio file during video recording. Toggling the music switch 2140 to anON position allows the playback of an audio file during the videorecording. Toggling the music switch 2140 to an OFF position deactivatesthe playback of an audio file during a video recording. In oneembodiment, if the done icon 2120 is selected, the device 100 saves allthe changes and returns the user back to the video camera screen 1700.

In some embodiments, if the video icon 1750 is activated by a fingercontact 2201 (as shown in FIG. 22 ), the device 100 presents the userwith a video option screen 2300 as shown in FIG. 23 . In someembodiments, the device 100 displays one or more controls associatedwith the video option screen 2300. In some embodiments, the one or morecontrols comprise a cancel icon 2310, a done icon 2320, a light switch2330, a camera switch 2340, a filter options 2350 and/or my videos icon2360, as shown in FIG. 23 .

In one embodiment, if the cancel icon 2310 is selected, the device 100returns the user back to the video camera screen 1700 without anychanges. In one embodiment, if the light switch 2330 is toggled, thedevice 100 toggles a flashlight (not shown) associated with the opticalsensor 164. Toggling the light switch 2330 to an ON position activatesthe flashlight (no shown). Toggling the light switch 2330 to an OFFposition deactivates the flashlight (no shown). In one embodiment, ifthe camera switch 2340 is toggled, the device 100 toggles which opticalsensor 164 is used to video record. Toggling the camera switch 2340 to afront position activates the optical sensor 164 located on the front ofthe device 100. Toggling the light switch 2330 to a rear positionactivates the optical sensor 164 located on the back of the device 100.In one embodiment, the filter options 2350 allow the user to selectdifferent filters for their video recordings. In some embodiments, thefilters include overlays such as, for example, film grain and/or lightflares. In some embodiments, the filters include color adjustments suchas, for example, grayscale, sepia, color splash, and/or cartoon. In someembodiments, the filters include pixel distortion effects such as, forexample, fish eye. In some embodiments, the filters include combinationfilters such as, for example, film grain on grayscale. In oneembodiment, if the done icon 2320 is selected, the device 100 saves allthe changes and returns the user back to the video camera screen 1700.

In one embodiment, if the my videos icon 2360 is selected, the device100 exits the video option screen 2300 and returns to the my videosscreen 200 (shown in FIG. 2 ) to allow the user to import a previouslyrecorded video file as new video segment in another video.

In some embodiments, if the image icon 1720 is activated by a fingercontact 2401 (as shown in FIG. 24 ), the device 100 presents the userwith an image option screen 2500 as shown in FIG. 25 . In someembodiments, the device 100 displays one or more controls associatedwith the image option screen 2500. In some embodiments, the one or morecontrols comprise a cancel icon 2510, a done icon 2520, a previouslyused images icons 2530, a change image icon 2530 and/or take a new photoicon 2550, as shown in FIG. 25 .

In one embodiment, if the cancel icon 2510 is selected, the device 100returns the user back to the video camera screen 1700 without anychanges. In one embodiment, under the previously used images icons 2530,the user is presented with a plurality of images that were previouslyused during other video recording(s). In one embodiment, if the changeimage icon 2540 is selected, the device 100 exits the image optionscreen 2500 and returns to the image selection screen 1200 (shown inFIG. 12 ) to allow the user to select another image to be displayedduring recording. In one embodiment, if the new photo icon 2550 isselected, the device 100 exits the image option screen 2500 and allowsthe user to take a new photograph to be used during recording. In oneembodiment, if the done icon 2320 is selected, the device 100 saves allthe changes and returns the user back to the video camera screen 1700.

In some embodiments, if the done icon 1730 is activated by a fingercontact 2601 (as shown in FIG. 26 ), the device 100 presents the userwith an option screen 2700 as shown in FIG. 27 . In some embodiments,the option screen 2700 presents the user with the title 2705 of thevideo being recorded.

In some embodiments, the device 100 displays one or more controlsassociated with the option screen 2700. In some embodiments, the one ormore controls comprise a trim icon 2710, a preview icon 2720, aduplicate icon 2730, a save draft icon 2740, and undo icon 2750, apublish icon 2760, a change title icon 2780 and/or a share icon 2770, asshown in FIG. 27 .

In one embodiment, if the trim icon 2710 is selected, the device 100allows the user to select a specific range of video to keep and discardthe rest. This may be used, for example, in importing external video toselect a given length to work with. Once trimmed, it is used like anyother video file.

In one embodiment, if the preview icon 2720 is selected, the device 100exits the option screen 2700 and enters the preview screen 1000 shown inand described with reference to FIG. 10 .

In one embodiment, if the duplicate icon 2730 is selected, the device100 creates a completely separate copy of the data so that the user cancontinue on the current project and branch to a separate project withsame data at a later time.

In one embodiment, if the save draft icon 2740 is selected, the device100 takes the currently recorded segments and copies them in a bundle(files and relevant position and metadata) for use later. This allowsusers to resume working on this draft video at a later time.

In one embodiment, if the undo icon 2750 is selected, the device 100deletes the last segment recorded and its relevant data.

In one embodiment, if the publish icon 2760 is selected, the device 100performs a concatenation process and converts all segments/audio in to asingle video file.

In one embodiment, if the share icon 2770 is selected, the device 100allows the user to share their video with other people using, forexample, YouTube, email, Instagram, etc.

In one embodiment, if the change title icon 2780 is selected, the device100 allows the user that change the title of the video.

FIG. 28 depicts a flow diagram showing a process of recording a video inaccordance with some embodiments. Referring to FIG. 28 , in someembodiments, at 2810, a device detects a finger-down event (i.e. fingercontact with the touch screen 112) to select an audio file. At 2820, thedevice detects another finger-down event to begin video recording andplaying of the audio file. At 2830, the device detects a finger-up eventto pause video recording and playing of the audio file. At 2840, thedevice determines the length of the video recording. At 2850, the devicedetermines the length of the audio file played. At 2860, the devicecompares the length of the video recording with the length of the audiofile played. At 2890, the device rewinds the audio file to match thelength of the video recording if the length of the audio file is lessthan the length of the video recording.

FIG. 29 depicts a flow diagram showing a process of recording a video ofa picture in accordance with some embodiments. Referring to FIG. 29 , insome embodiments, at 2910, a device detects a finger-down event toselect an audio file. At 2915, the device detects a finger-down event toselect an image file. At 2920, the device detects another finger-downevent to begin image video recording and playing of the audio file. At2930, the device detects a finger-up event to pause image videorecording and playing of the audio file. At 2940, the device determinesthe length of the image video recording. At 2950, the device determinesthe length of the audio file played. At 2960, the device compares thelength of the image video recording with the length of the audio fileplayed. At 2990, the device rewinds the audio file to match the lengthof the image video recording if the length of the audio file is lessthan the length of the image video recording.

FIG. 34 depicts a flow diagram showing another process of recording avideo in accordance with some embodiments. Referring to FIG. 34 , at3410, a device detects a finger-down event to begin video recordingthrough an optical sensor 164. In some embodiments, the device isconfigured to play an audio file during the video recording. At 3420,the device detects another finger-down event to select and display astill image on the touch screen 112. At 3430, the device detects anotherfinger-down event to begin video recording of the still image displayedon the touch screen 112. In some embodiments, the device is configuredto play the audio file during the video recording of the still imagedisplayed on the touch screen 112. In some embodiments, the device isconfigured to record user's voice during the video recording of thestill image displayed on the touch screen 112.

FIG. 35 depicts a flow diagram showing another process of recording avideo in accordance with some embodiments. Referring to FIG. 35 , at3510, a device detects a finger-down event to begin video recordingthrough an optical sensor 164. In some embodiments, the device isconfigured to play an audio file during the video recording. At 3520,the device detects another finger-down event to select and display apreviously recorded video on the touch screen 112. At 3530, the devicedetects another finger-down event to begin playing the previouslyrecorded video on the touch screen 112 and re-recording the previouslyrecorded video being played on the touch screen 112. In someembodiments, the device is configured to play the audio file during there-recording of the previously recorded video being played on the touchscreen 112. In some embodiments, the device is configured to recorduser's voice during the re-recording of the previously recorded videobeing played on the touch screen 112. In some embodiments, the device isconfigured to play audio of the previously recorded video during there-recording of the previously recorded video being played on the touchscreen 112.

FIG. 36 depicts a flow diagram showing another process of recording avideo in accordance with some embodiments. Referring to FIG. 36 , at3610, a device detects a finger-down event to select and display a stillimage on the touch screen 112. At 3620, the device detects anotherfinger-down event to begin video recording of the still image displayedon the touch screen 112. In some embodiments, the device is configuredto play an audio file during the video recording of the still imagedisplayed on the touch screen 112. In some embodiments, the device isconfigured to record user's voice during the video recording of thestill image displayed on the touch screen 112.

FIG. 37 depicts a flow diagram showing another process of recording avideo in accordance with some embodiments. Referring to FIG. 37 , at3710, a device detects a finger-down event to select and display apreviously recorded video on the touch screen 112. At 3720, the devicedetects another finger-down event to begin playing the previouslyrecorded video on the touch screen 112 and re-recording at least aportion of the previously recorded video being played on the touchscreen 112. In some embodiments, the device is configured to play anaudio file during the re-recording of the previously recorded videobeing played on the touch screen 112. In some embodiments, the device isconfigured to record user's voice during the re-recording of thepreviously recorded video being played on the touch screen 112. In someembodiments, the device is configured to play audio of the previouslyrecorded video during the re-recording of the previously recorded videobeing played on the touch screen 112.

According to one aspect, a computer implemented method is presentlydisclosed. The method comprises at an electronic device with atouch-sensitive display, displaying a still image on the touch-sensitivedisplay; while displaying the still image, detecting user's fingercontact with the touch-sensitive display; and in response to detectingthe user's finger contact, video recording the still image.

According to a second aspect, a computer implemented method is presentlydisclosed. The method comprises at an electronic device with atouch-sensitive display, displaying a pre-recorded video on thetouch-sensitive display; while displaying the pre-recorded video,detecting user's finger contact with the touch-sensitive display; inresponse to detecting the user's finger contact, start playing at leasta portion of the pre-recorded video on the touch-sensitive display; andvideo recording at least the portion of the pre-recorded video playingon the touch-sensitive display.

According to a third aspect, a computer implemented method is presentlydisclosed. The method comprises at an electronic device with atouch-sensitive display, detecting user's finger contact with thetouch-sensitive display; in response to detecting the user's fingercontact, capturing visual media through at least one optical sensor; andin response to detecting the user's finger contact, playing an audiofile through a speaker.

In some embodiments, recording process involves input fromtouch-sensitive display system for start/stop. Video recording is doneby capturing data from optical sensor, optical sensor controller,peripherals interface, and stored in memory as video buffers. At the endof each recording, video buffers are joined in to a single video filethat remains in memory. The video file is then re-encoded frame by frameand once processed saved to disk. Once all recordings are complete,video files are demuxed (joined) in to a single video file. Anadditional (optional) audio track is then read in to memory from diskand processed and mixed with the audio track of the video filepreviously written to disk (now pulled back in to memory) and re-savedto disk. If user is recording with microphone audio, while opticalsensor is receiving video data, the audio circuitry is reading audiosamples and which are added as a track to the video file container. Ifuser is recording with a soundtrack, the audio circuitry speaker playsthe audio that is read from disk and is mixed in after recording asmentioned above.

The foregoing description, for purpose of explanation, has beendescribed with reference to specific embodiments. However, theillustrative discussions above are not intended to be exhaustive or tolimit the invention to the precise forms disclosed. Many modificationsand variations are possible in view of the above teachings. Theembodiments were chosen and described in order to best explain theprinciples of the invention and its practical applications, to therebyenable others skilled in the art to best utilize the invention andvarious embodiments with various modifications as are suited to theparticular use contemplated.

While several illustrative embodiments of the invention have been shownand described, numerous variations and alternative embodiments willoccur to those skilled in the art. Such variations and alternativeembodiments are contemplated, and can be made without departing from thescope of the invention as defined in the appended claims.

As used in this specification and the appended claims, the singularforms “a,” “an,” and “the” include plural referents unless the contentclearly dictates otherwise. The term “plurality” includes two or morereferents unless the content clearly dictates otherwise. Unless definedotherwise, all technical and scientific terms used herein have the samemeaning as commonly understood by one of ordinary skill in the art towhich the disclosure pertains.

The foregoing detailed description of exemplary and preferredembodiments is presented for purposes of illustration and disclosure inaccordance with the requirements of the law. It is not intended to beexhaustive nor to limit the invention to the precise form(s) described,but only to enable others skilled in the art to understand how theinvention may be suited for a particular use or implementation. Thepossibility of modifications and variations will be apparent topractitioners skilled in the art. No limitation is intended by thedescription of exemplary embodiments which may have included tolerances,feature dimensions, specific operating conditions, engineeringspecifications, or the like, and which may vary between implementationsor with changes to the state of the art, and no limitation should beimplied therefrom. Applicant has made this disclosure with respect tothe current state of the art, but also contemplates advancements andthat adaptations in the future may take into consideration of thoseadvancements, namely in accordance with the then current state of theart. It is intended that the scope of the invention be defined by theClaims as written and equivalents as applicable. Reference to a claimelement in the singular is not intended to mean “one and only one”unless explicitly so stated. Moreover, no element, component, nor methodor process step in this disclosure is intended to be dedicated to thepublic regardless of whether the element, component, or step isexplicitly recited in the claims. No claim element herein is to beconstrued under the provisions of 35 U.S.C. Sec. 112, sixth paragraph,unless the element is expressly recited using the phrase “means for . .. ” and no method or process step herein is to be construed under thoseprovisions unless the step, or steps, are expressly recited using thephrase “step(s) for . . . .”

1.-20. (canceled)
 21. A computer implemented method, comprising: at anelectronic device with a touch-sensitive display, detecting user'sfinger contact with the touch-sensitive display; and in response todetecting the user's finger contact, video recording through a firstoptical sensor and recording user's voice as long as the user's fingercontact with the touch-sensitive display is detected.
 22. The computerimplemented method of claim 21, further comprising: detecting removal ofthe user's finger contact with the touch-sensitive display; in responseto the removal of the user's finger contact, pausing video recording andpausing recording of user's voice.
 23. The computer implemented methodof claim 22, further comprising: detecting another finger contact withthe touch-sensitive display; and in response to detecting the anotherfinger contact, continue video recording through a second optical sensorand recording user's voice as long as the another finger contact withthe touch-sensitive display is detected.
 24. The computer implementedmethod of claim 23, further comprising: playing an audio file through aspeaker in response to detecting the user's finger contact.
 25. Thecomputer implemented method of claim 24, further comprising: pausingplaying the audio file in response to detecting removal of the user'sfinger contact.
 26. The computer implemented method of claim 25, furthercomprising: continue playing the audio file through the speaker inresponse to detecting the another finger contact.